<?php

//require './vendor/autoload.php';
require './include/chajian/phpTcpdfMyChajian.php';

class phpTcpdfChajian extends Chajian
{   
    /**
     * 使用TCPDF创建一个示例PDF测试文档
     * @param array $data 必填 一维数组
     * @param string $path 必填 模板文件路径
     * @param array $dataRow 选填 excel数据 二维数组
     * @param string $filename 选填 文件名称
     * TCPDF-示例：认证签名（实验性）
     * 参考：php实现往pdf中加数字签名操作示例-https://www.jb51.net/article/145213.htm
     * @return bool
     */
    public function  creatpdftcpdf($mid){
        header("content-type:text/html;charset=utf8");
        // 创建新的PDF文档
        $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
        //var_dump($pdf);die();
        // 设置文档信息
        $pdf->SetCreator(PDF_CREATOR);
        $pdf->SetAuthor("内蒙古中采电子招投标系统");
        $pdf->SetTitle("投标文件测试签章文件");
        $pdf->SetSubject('TCPDF Tutorial');
        $pdf->SetKeywords('TCPDF, PDF, example, test, guide');
        // 设置默认标题数据
        //$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 052', PDF_HEADER_STRING);
        //var_dump(PDF_HEADER_LOGO);die;
        $pdf->SetHeaderData(PDF_HEADER_LOGO, 40, "<< 电子招投标系统 >>", "投标文件测试签章文件");
        // 设置页眉和页脚字体
        $pdf->setHeaderFont(Array('stsongstdlight', '', 18));
        $pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
        // 设置默认等宽字体
        $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
        // 设置页边距
        $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
        $pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
        $pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
        // 设置自动分页符
        $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
        // 设置图像比例因子
        $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
        // 设置一些与语言相关的字符串（可选）
        if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
            require_once(dirname(__FILE__).'/lang/eng.php');
            $pdf->setLanguageArray($l);
        }
        // 设置证书文件//
        $certificate = 'file://data/cert/tcpdf.crt';
        $certificate = 'file://'.realpath('./data/cert/tcpdf.crt');
        // 设置附加信息
        $info = array(
            'Name' => 'TCPDF',
            'Location' => 'Office',
            'Reason' => "内蒙古中采电子招投标系统",
            'ContactInfo' => "内蒙古中采电子招投标系统",
        );
        // 设置文档签名
        $pdf->setSignature($certificate, $certificate, 'tcpdfdemo', '', 2, $info);
        //设置字体
        $pdf->SetFont('stsongstdlight', '', 12);
        // 添加页面

        // 打印一行文本

        $parser_pdfFile = 'http://wodeoa.hcaskj.com/upload/2020-12/17_15225283.pdf';
        $parser_parser = new \Smalot\PdfParser\Parser();
        $parser_pdfPath = $parser_pdfFile;
        $parser_pdf  = $parser_parser->parseFile($parser_pdfPath);

        $pages = $parser_pdf->getPages(); //分页信息
        foreach ($pages as $k=> $page) {
            $text =  $page->getText(); //输出每一页的内容
            //$pdf->setPage($k);
            //$pdf->SetAutoPageBreak(TRUE, '15');
            $pdf->AddPage();
            $pdf->writeHTMLCell(0, 0, '', '', $text, 0, 1, 0, true, '', true);
        }

//        $parser_text = $parser_pdf->getText();
//        $text =  $parser_text;

//        $text = '这是<b color="#FF0000">使用默认值进行数字签名的</b>文档（示例） <b>tcpdf.crt</b> 文件证书.<br />要验证此签名，<b color="#006600">必须加载tcpdf.fdf</b>文件 在Arobat阅读器上添加<i>可信身份列表的证书</i>.<br /><br />有关更多信息，请查看此示例的源代码和<i>源码中setSignature（）</i> 方法的文档.<br />';
        //$pdf->writeHTML($text, true, 0, true, 0);

        // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        // *** 设置签名外观 ***
        // 创建签名内容（图像和/或文本）
        $pdf->setPage(1);
        $pdf->Image('vendor/tecnickcom/tcpdf/examples/images/tcpdf_signature.jpg', 140, 220, '50', '50', 'jpg', '', '', false, 300);
        // 定义签名外观的活动区域
        //$pdf->setSignatureAppearance(180, 60, 15, 15);
        // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        // *** 设置空签名外观 ***
        //$pdf->addEmptySignatureAppearance(180, 80, 15, 15);
        // ---------------------------------------------------------
        //关闭并输出PDF文档
        $pdf->Output('example_052.pdf', 'I');
        //============================================================+
        // END OF FILE
        //============================================================+
    }



    /**
     * 使用TCPDF创建一个示例PDF测试文档
     * @param array $data 必填 一维数组
     * @param string $path 必填 模板文件路径
     * @param array $dataRow 选填 excel数据 二维数组
     * @param string $filename 选填 文件名称
     * TCPDF-示例：认证签名（实验性）
     * 参考：php实现往pdf中加数字签名操作示例-https://www.jb51.net/article/145213.htm
     * @return bool
     */
    public function creatzbjgtcpdf($bidyesnotice){
        header("content-type:text/html;charset=utf8");
        // 创建新的PDF文档
        $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
        //var_dump($pdf);die();
        // 设置文档信息
        $pdf->SetCreator(PDF_CREATOR);
        $pdf->SetAuthor("内蒙古中采电子招投标系统");
        $pdf->SetTitle("投标文件测试签章文件");
        $pdf->SetSubject('TCPDF Tutorial');
        $pdf->SetKeywords('TCPDF, PDF, example, test, guide');
        // 设置默认标题数据
        //$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 052', PDF_HEADER_STRING);
        //var_dump(PDF_HEADER_LOGO);die;
        $pdf->SetHeaderData(PDF_HEADER_LOGO, 40, "", "中标通知书");
        // 设置页眉和页脚字体
        $pdf->setHeaderFont(Array('stsongstdlight', '', 18));
        $pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
        // 设置默认等宽字体
        $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
        // 设置页边距
        $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
        $pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
        $pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
        // 设置自动分页符
        $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
        // 设置图像比例因子
        $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
        // 设置一些与语言相关的字符串（可选）
        if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
            require_once(dirname(__FILE__).'/lang/eng.php');
            $pdf->setLanguageArray($l);
        }
        // 设置证书文件//
        $certificate = 'file://data/cert/tcpdf.crt';
        $certificate = 'file://'.realpath('./data/cert/tcpdf.crt');
        // 设置附加信息
        $info = array(
            'Name' => 'TCPDF',
            'Location' => 'Office',
            'Reason' => "内蒙古中采电子招投标系统",
            'ContactInfo' => "内蒙古中采电子招投标系统",
        );
        // 设置文档签名
        $pdf->setSignature($certificate, $certificate, 'tcpdfdemo', '', 2, $info);
        //设置字体
        $pdf->SetFont('stsongstdlight', '', 12);
        // 添加页面

        // 打印一行文本

        $pdf->AddPage();

        $pdf->writeHTML($bidyesnotice['noticecontent'], true, false, true, false, '');

        // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        // *** 设置签名外观 ***
        // 创建签名内容（图像和/或文本）
        $pdf->setPage(1);
        $pdf->Image('vendor/tecnickcom/tcpdf/examples/images/tcpdf_signature.jpg', 140, 220, '50', '50', 'jpg', '', '', false, 300);
        // 定义签名外观的活动区域
        //$pdf->setSignatureAppearance(180, 60, 15, 15);
        // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        // *** 设置空签名外观 ***
        //$pdf->addEmptySignatureAppearance(180, 80, 15, 15);
        // ---------------------------------------------------------
        //关闭并输出PDF文档
        $pdf->Output('example_052.pdf', 'I');
    }


    /**
     * 使用TCPDF创建一个投标回执文档
     * @param array $data 必填 一维数组
     * @param string $path 必填 模板文件路径
     * @param array $dataRow 选填 excel数据 二维数组
     * @param string $filename 选填 文件名称
     * TCPDF-示例：认证签名（实验性）
     * 参考：php实现往pdf中加数字签名操作示例-https://www.jb51.net/article/145213.htm
     * @return bool
     */
    public function creattbhztcpdf($datalist){
        header("content-type:text/html;charset=utf8");
        // 创建新的PDF文档
        $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
        //var_dump($pdf);die();
        // 设置文档信息
        $pdf->SetCreator(PDF_CREATOR);
        $pdf->SetAuthor("内蒙古中采电子招投标系统");
        $pdf->SetTitle("投标确认回执文件");
        $pdf->SetSubject('TCPDF Tutorial');
        $pdf->SetKeywords('TCPDF, PDF, example, test, guide');
        // 设置默认标题数据
        //$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 052', PDF_HEADER_STRING);
        //var_dump(PDF_HEADER_LOGO);die;
        $pdf->SetHeaderData(PDF_HEADER_LOGO, 40, "", "");
        // 设置页眉和页脚字体
        $pdf->setHeaderFont(Array('stsongstdlight', '', 18));
        $pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
        // 设置默认等宽字体
        $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
        // 设置页边距
        $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
        $pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
        $pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
        // 设置自动分页符
        $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
        // 设置图像比例因子
        $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
        // 设置一些与语言相关的字符串（可选）
        if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
            require_once(dirname(__FILE__).'/lang/eng.php');
            $pdf->setLanguageArray($l);
        }
        // 设置证书文件//
        $certificate = 'file://data/cert/tcpdf.crt';
        $certificate = 'file://'.realpath('./data/cert/tcpdf.crt');
        // 设置附加信息
        $info = array(
            'Name' => 'TCPDF',
            'Location' => 'Office',
            'Reason' => "内蒙古中采电子招投标系统",
            'ContactInfo' => "内蒙古中采电子招投标系统",
        );
        // 设置文档签名
        $pdf->setSignature($certificate, $certificate, 'tcpdfdemo', '', 2, $info);
        //设置字体
        $pdf->SetFont('stsongstdlight', '', 12);
        // 添加页面

        // 打印一行文本
        $thistime = date('Y-m-d',time());
        $pdf->AddPage();
        $html = '<p class="MsoNormal" align="center" style="font-size:26px;text-align:center;"><b>投标文件签收回执函</b><b></b></p><p class="MsoNormal" align="justify" style="text-align:justify;"><b>&nbsp;&nbsp;&nbsp;&nbsp;</b><b></b></p><p class="MsoNormal" align="justify" style="text-align:justify;">致：'.$datalist['company'].'</p><p class="MsoNormal" align="justify" style="text-indent:28.0000pt;text-align:justify;">现接收到贵公司关于项目：<u>'.$datalist['proname'].'</u><u>(编号:</u><u>'.$datalist['pronumber'].'</u><u>)</u>标段：<u>'.$datalist['bidname'].'(编号：'.$datalist['bidcode'].')</u>投标/响应文件，签收情况如下：</p><p class="MsoNormal" align="justify" style="text-indent:28.0000pt;text-align:justify;">1.&nbsp;文档数量：<u>&nbsp;1 </u>份。</p><p class="MsoNormal" align="justify" style="text-indent:28.0000pt;text-align:justify;">2.&nbsp;文档形式：<u>PDF电子文档</u>。</p><p class="MsoNormal" align="justify" style="text-indent:28.0000pt;text-align:justify;">3.&nbsp;文档名称：'.$datalist['filename'].'。</p><p class="MsoNormal"><b>&nbsp;</b></p><p class="MsoNormal"><b>&nbsp;</b></p><p class="MsoNormal"><b>&nbsp;</b></p><p class="MsoNormal" align="justify" style="text-align:justify;">供应商确认：'.$datalist['company'].'&nbsp;&nbsp;&nbsp;<span>投标时间：</span>'.$datalist['bidtime'].'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</p><p class="MsoNormal">
    &nbsp;</p><p class="MsoNormal"><span>采购人</span>/<span>代理机构：'.$datalist['bidcompany'].'</span></p><p class="MsoNormal">签收人：'.$datalist['bidadminname'].'</p><p class="MsoNormal">签收时间：'.$thistime.'</p>';

        $pdf->writeHTML($html, true, false, true, false, '');

        // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        // *** 设置签名外观 ***
        // 创建签名内容（图像和/或文本）
        $pdf->setPage(1);
        $pdf->Image('vendor/tecnickcom/tcpdf/examples/images/tcpdf_signature.jpg', 140, 220, '50', '50', 'jpg', '', '', false, 300);
        // 定义签名外观的活动区域
        //$pdf->setSignatureAppearance(180, 60, 15, 15);
        // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        // *** 设置空签名外观 ***
        //$pdf->addEmptySignatureAppearance(180, 80, 15, 15);
        // ---------------------------------------------------------
        //关闭并输出PDF文档
        $pdf->Output('tbhz.pdf', 'D');
    }
}
